//丑数----263
//丑数 就是只包含质因数 2、3 和 5 的正整数。
//给你一个整数 n ，请你判断 n 是否为 丑数 。如果是，返回 true ；否则，返回 false 。


#include <stdio.h>
#include <stdbool.h>

bool isUgly(int n) 
{
    int flag = 0;
    if(n == 1 || (n == 1 && flag == 1) || n == 4 || n == 2)
        return true;
    while(n > 0)
    {
        if(n % 2 == 0)
        {
            flag = 1;
            return isUgly(n/2);
        }   
        if(n % 3 == 0)
        {
            flag = 1;
            return isUgly(n/3);
        }
        if(n % 5 == 0)
        {
            flag = 1;
            return isUgly(n/5);
        }
        if(flag == 0 || (n < 5 && n > 2 && n != 3))
            return false;
    }
    return false;
}

int main()
{
    int n;
    printf("输入一个正整数:");
    scanf("%d",&n);
    if(isUgly(n) == 1)
        printf("%d是丑数\n",n);
    else
        printf("%d不是丑数\n",n);
    return 0;
}